Method of transferring resources between different operation systems

ABSTRACT

This invention provides a method of transferring resources between two different operating systems. The invention applies in transferring resources between the first group of file servers (at least one) executing Windows NT operating system and the second group of file servers (at least one) executing Linux operating system.  
     The invention comprises the following steps:  
     (A) Transferring multiple configurations, files and directories executing on the first group of Windows NT operating system file servers to the second group of Linux operating system file server.  
     (B) Coding a Linux based human-computer interface control program, which provides the same function as that in the Windows NT operating system to ensure the integrity of the configurations, files and directories transferred after step (A).

FIELD OF THE INVENTION

[0001] This invention provides a method to transfer resources between different operating systems. The invention is specialized in transferring resources between Windows NT operating system and Linux operating system.

BACKGROUND OF THE INVENTION

[0002] These days, many corporations already used Microsoft Windows NT operating system as the environment of their computer file servers. However, as more and more supportive features are available to the Linux operating system, as well as the software development cost in Linux operating system is significantly lower than those in Microsoft Windows, some corporations started to consider jump abroad to the Linux operating system.

[0003] In fact, many corporations already did. The new problem is: How could they converse the resources from the old system to the new one successfully and effectively?

SUMMARY OF THE INVENTION

[0004] The objective of the invention is to provide a method to transfer resources between two different operating systems. The invention is specialized in transferring resources between Windows NT operating system and Linux operating system.

[0005] To achieve the invention objective, the invention provides a method to transfer resources between different operating systems. The invention is applied in transferring resources between the first group of file servers (at least one) executing Windows NT operating system and the second group of file servers (at least one) executing Linux operating system.

[0006] The method of the invention comprises the following steps:

[0007] (A) Transferring multiple configurations, files and directories executing on the first group of Windows NT operating system file servers to the second group of Linux operating system file server; and

[0008] (B) Coding a Linux based human-computer interface control program, which provides the human-machine interface with the the same function as that in the Windows NT operating system, to ensure the integrity of the configurations, files and directories transferred in step (A).

[0009] The following embodiment and the attaching drawings provide detailed explanation to help people understand the objectives characteristics and effects of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The related drawings in connection with the detailed description of this invention, which is to be made later, are described briefly as follows, in which:

[0011]FIG. 1 shows a computer network environment that the invention method applies;

[0012]FIG. 2 shows the flow chart of the invention;

[0013]FIG. 3A shows a screen that the second file server is executing the first program;

[0014]FIG. 3B shows an example to give authority instruction in setting a user account “adamwu”;

[0015]FIG. 4A shows a screen that the second file server is executing the second program to administrate users;

[0016]FIG. 4B shows a screen that the second file server is executing the second program to administrate groups;

[0017]FIG. 5A shows a screen that the second file server is executing the third program and how sendmail software administrates e-mails;

[0018]FIG. 5B shows a screen that the third program set parameters in sendmail software;

[0019]FIG. 6A shows a screen that the second file server is executing the forth program and displays the virtual directories needed in executing FTP server software, such as “apache” software, in the second file server;

[0020]FIG. 6B shows another screen that the second file server is executing the forth program;

[0021]FIG. 7A shows a screen that the second file server is executing the fifth program;

[0022]FIG. 7B shows another screen that the second file server is executing the fifth program;

[0023]FIG. 8 shows a screen that the second file server is executing the sixth program; and

[0024]FIG. 9 shows a screen that the second file server is executing the seventh program.

DETAILED DESCRIPTION OF THE INVENTION

[0025]FIG. 1 shows a computer network environment that the invention method applies. In FIG. 1, a Local Area Network 60 links the first file server 10 executing Microsoft Windows NT operating system, the second file server 20 executing Linux operating system and several user end (client) computer 30, 40, etc. executing Microsoft Windows operating system. The user end computer 30, 40 could execute Microsoft Windows operating system such as Microsoft Windows 98 operating system, or s Microsoft Windows Millium Edition Windows operating system, or Microsoft Windows operating system NT WORKSTATION version. Under a network environment based on Microsoft Windows operating system, user end computer 30, 40 could share the resources, such as files and directories, with the first file server 10 via Local Area Network 60.

[0026] However, if the user end computer 30 were switching from Microsoft Windows operating system to Linux operating system, or in another case, a new Linux base user end computer 50 was added to Local Area Network 60, either user end computer 30 or user end computer 50 could not share resources with the first file server 10 in these two cases.

[0027] The above problem would be solved if the second file server 20 could apply the invention method and transfer the shared resources from the first file server 10 to the second file server 20. So, in the two case mentioned above, user end computer 30 and user end computer 50 could share the transferred resources with the second file server 20 via Local Area Network 60.

[0028]FIG. 2 shows the flow chart of the invention. In step 100, the configurations, files and directories in the first file server 10 executing Windows NT operating system are transferred to the second file server 20 executing Linux operating system. Examples of the configurations, files and directories in the first file server 10 are Microsoft Windows NT operating system shared files, shared directories, users, groups (groups) all information related to e-mail server software, all information related to web server software, all information related to FTP server software, etc.

[0029] In step 101, the invention codes a Linux based human-computer interface control program, which provides the same user interface as that in the Windows NT operating system, on the second file server 20 to ensure the integrity of the configurations, files, and directories transferred in step 100. The major reason that the invention provides the above interface control program is to make administrators who are familiar with Windows NT operating system on the first file server 10 could easily use the same Windows NT based human-computer interface to administrate the resources on the second file server 20.

[0030] The following article will explain in detail the actual steps to transfer Windows NT operating system configurations, files and directories from the first file server 10 to the second file server 20.

[0031] First, let us explain the actual steps to transfer all information related to file server software from the first file server 10 to the second file server 20. The first file server 10 executes “rmtshare.exe” instruction to get all shared directories under Windows NT operating system. Examples of the shared directories are: Share name Resource Remark -------------------------------------------------------------- NETLOGON C:\WINNT\System32\Rep1\Import ADMIN$ C:\WINT I386 C:\I386

[0032] Then, execute the instruction of the shared directory name parameter in every shared directory and get the user authority configurations of the shared directories. The following example shows a possible outcome after executing “rmtshare.exe C:\I386” instruction and gets the “C:\I386” user authority configurations: Share name \\lspntserver\i386 ---------------------------------------------------------- Path: C:\I386 REMARK LSPDOMAIN \adam: FULL CONTROL \EVERYONE: READ

[0033] Then, execute SAMBA software in the second file server 20 and write user authority configurations to the “smb.conf” file in SAMBA software. At last, create a default directory on the second file server 20, for example default directory “/lsproot”, then copy the shared directories and files under those shared directories on the first file server 10 to that default directory. For instance, copy the shared directories and files under those shared directories in the above example to “/lsproot” default directories. Thus, the second file server 20 will have exactly the same shared directories, the files under those shared directories files and user authority as in the first file server 10. This example explains how user end computer 60 could share transferred resources such as “/lsproot/I386” with the second file server 20 via Local Area Network 60.

[0034] Second, let us explain the actual steps to transfer all information related to users and groups in the first file server 10 to the second file server 20. The following example shows a possible users configurations after executing “userstat.exe” instruction in the first file server 10 and gets all users: \LSPNTSERVER user account --------------------------------------------- adam Administrator  Guest Tony IUSER-LSPNTSERVER

[0035] Then, execute “useradd” instruction in the second file server 20 to add the users to the Linux operating system. For example, execute “useradd” instruction and add user “adam” in the above users configurations to the Linux operating system. At the same time, execute “showgrps.exe” instruction in the first file server 10 and get all groups. The following example shows a possible groups configuration: *Account Operators *Administrators *guests *Engineers

[0036] Then, execute the instruction of the group name parameter in every group and get the user authority configurations of the groups. For example, execute “showgrps.exe Engineers” instruction and get the users in the “Engineers” groups. The following example shows a possible user configuration of the “Engineers” groups: Alias Engineer Members -------------------------------- adam emma test

[0037] Then, write the user configurations of the groups to the files “/etc/group” of the Linux operating system on the second file server 20. “/etc/group” is designed to store groups data. For example, write the user configurations in “Engineers” groups to “/etc/group” files.

[0038] Third, let us explain the actual steps to transfer all information related to e-mail severs in the first file server 10 to the second file server 20. We will repeat the technique above to transfer the users configurations in the first file server 10 to the second file server 20. Then, get the users e-mail account configurations in the first file server 10. For example, get users e-mail account “adam@x.com.tw”. Then, execute a Linux based e-mail management software in the second file server 20. For example, execute the instructions in Linux's “sendmail” e-mail software to add new e-mail account and thus, add the entire users e-mail account configuratio in the first file server 10 to the second file server 20. For example, execute sendmail e-mail software and add users e-mail account “adam@x.com.tw” to the second file server 20.

[0039] Forth, let us explain the actual steps to transfer all information related to web server software in the first file server 10 to the second file server 20. We will get all virtual directories configurations and their corresponding actual directories configurations of Windows NT operating system NT in the first file server 10. The following example shows a possible virtual directories after executing CSCRIPT of Windows NT operating system to access ADSI objects:

[0040] root

[0041] IISSAMPLES

[0042] IISADMIN

[0043] ebusiness

[0044] ecredit

[0045] The first three virtual directories in the above virtual directories example are reserved for IIS (Internet Information Service) software. The later two are virtual directories created by administrators of the first file server 10. Then, we will get individual information of every virtual directory in the first file server 10. For example, the individual information of ebusiness are:

[0046] Path: c:\www\ebusiness

[0047] Default file: index.htm

[0048] browsable: False

[0049] Read: True

[0050] Write: True

[0051] From the individual information of virtual directory “ebusiness” in the above example, we could know information such as the corresponding actual directory is “c:\www\ebusiness” and the default file of virtual directories “ebusinessis” is “index.htm” file. Then, execute a Linux based hpertext transfer prococal (HTP) software, such as “Apache” software, in the second file server 20 and write the above virtual directories configurations and their corresponding actual directories configurations to “http.conf” file and “access.conf” file of the “apache” software respectively. Then, set a default directory, for example “/lsproot/wwwroot”, in the second file server 20. In this case, virtual directory ebusiness will be written into “http.conf” files as /lsproot/wwwroot/ebusiness″, and virtual directory ecredit will be written into “http.conf” files as /lsproot/wwwroot/ecredit″. At last, copy the actual directories and the files under those actual directories in the first file server 10 to the default directory. For example, copy the actual directories and the files under those actual directories of “c:\www\ebusiness” in the first file server 10 to the default directory “/lsproot/wwwroot” in the second file server 20. Now, “c:\www\ebusiness” is mapping to “/lsproot/wwwroot/ebusiness”.

[0052] Fifth, let us explain the actual steps to transfer all information related to FTP (File Transfer Protocol) server software in the first file server 10 to the second file server 20. Since IIS controls web server software and files FTP server software in Microsoft Windows NT operating system, so we could reuse the above techniques to get the virtual directories configurations and their corresponding actual directories configurations of FTP server software used in the first file server 10. Then, execute a Linux based FTP software, such as “wuftp” software, in the second file server 20 and write the virtual directories configurations and their corresponding actual directories configurations to “/etc/ftpaccess” directory and “/etc/ftphost” directory of the Linux operating system respectively. Then, set a default directory, for example “/lsproot/ftproot”, in the second file server 20 and copy the actual directories and the files under those actual directories in the first file server 10 to the default directory.

[0053] Base on the invention method, the graphic interface control program in steps 101 has at least one “The First Program”. The first program has a human-machine interface with the same function to give instructions to directories and files in Windows NT operating system. The second file server 20 can execute the first program and give instructions to directories and files transferred to the second file server 20 in step (100). FIG. 3A shows a screen that the second file server 20 is executing the first program; the administrator of the second file server 20 is giving instruction to the “/lsproot/lsp” directory. FIG. 3B shows an example to give authority instruction in setting a user account “adamwu”.

[0054] Base on the invention method, the graphic interface control program in steps 101 has at least one “The Second Program”. The second program has a human-machine interface with the same function to give instructions to users and groups in Windows NT operating system. The second file server 20 can execute the second program and give instructions to users and groups transferred to the second file server 20 in step (A). FIG. 4A shows a screen that the second file server 20 is executing the second program to administrate users. FIG. 4B shows a screen that the second file server 20 is executing the second program to administrate groups.

[0055] Base on the invention method, the graphic interface control program in steps 101 has at least one “The Third Program”. The third program has a human-machine interface with the same function to give instructions to users and groups in Windows NT operating system. The second file server 20 can execute the third program and give instructions to e-mails administrated by a Linux based sendmail software. FIG. 5A shows a screen that the second file server 20 is executing the third program and how sendmail software administrates e-mails. In FIG. 5A, the third program give instructions to delete the e-mails of “adamwu@das.com.tw”. FIG. 5B shows a screen that the third program set parameters in sendmail software.

[0056] Base on the invention method, the graphic interface control program in steps 101 has at least one “The Forth Program”. The forth program creates a screen with the same look as executing IIS (Internet Information Server) software in Windows NT operating system. The second file server 20 can execute the forth program and display the virtual directories and their corresponding actual directories in the second file server 20. FIG. 6A shows a screen that the second file server 20 is executing the forth program and displays the virtual directories needed in executing FTP server software, such as “apache” software, in the second file server 20. FIG. 6B shows another screen that the second file server 20 is executing the forth program. The screen shows setting status “read” to virtual directory “home/httpd”.

[0057] Base on the invention method, the graphic interface control program in steps 101 has at least one “The Fifth Program”. The second file server 20 can execute the fifth program, give instructions to virtual directories configurations and actual directories configurations of a FTP software, such as “wuftp” software, and give instructions to revoke authority to users use the FTP (file transfer protocol) software. FIG. 7A shows a screen that the second file server 20 is executing the fifth program. FIG. 7B shows another screen that the second file server 20 is executing the fifth program.

[0058] Further more, the invention method comprises coding “The Sixth Program” that gives run/stop instructions on multiple server software executed in the second file server. The second file server 20 can execute the sixth program, give run/stop instructions on server software such as e-mail server software, FTP server software, Telnet server software, Web server software, SAMBA server software, POSTGRESQL server software, MYSQL server software, etc. FIG. 8 shows a screen that the second file server 20 is executing the sixth program.

[0059] Further more, the invention method also comprises coding “The Seventh Program” that sets multiple parameters of DHCP (Dynamic Host Configurations Protocol). The second file server 20 can execute the seventh program, write those preset multiple parameters into the “/etc/dhcpd.conf” file of the Linux operating system in the second file server 20, and execute DHCP software developed for Linux operating system in the second file server 20. The parameters used to set DHCP are: one subnet parameter, one network mask parameter, one starting IP address parameter, one ending IP address parameter and one user name parameter. FIG. 9 shows a screen that the second file server 20 is executing the seventh program.

[0060] After all, the preferred example shown above already demonstrates, but not limits the benefit of the invention. Any one who is familiar with this technique can change or modify the invention without leaving the spirit and scope of the invention. Thus, the protection scope of the invention should base on the patent scope claimed in the next chapter. 

What is claimed is:
 1. A method of transferring resources between different operating systems, the method applying in transferring resources between the first group of at least one file servers executing Windows NT operating system and the second group of at least one file servers executing Linux operating system, the method comprising the following steps: (A)Transferring multiple configurations, files and directories executing on the first group of Windows NT operating system file servers to the second group of Linux operating system file server; and (B) Coding a Linux based human-computer interface control program, which provides the human-machine interface with the same user interface as that in the Windows NT operating system to ensure the integrity of the configurations, files and directories transferred after step (A). 2.The method according to claim 1, wherein the transferring step in the step (A) further comprising the following steps: (a1) Obtaining all the shared directories of the Windows NT operating system in the first file server; (a2) Obtaining the user authority configurations of the shared directories captured in the step (a1); p1 (a3) Executing a SAMBA software of the Linux operating system in the second file server and writing the user authority configurations captured in the step (a2) into the “smb.conf” files of the SAMBA software; and (a4) Setting a default directory in the second file server and copying the shared directories and the files under all the shared directories in the first file server to the default directories. Through the step (a1) to (a3), the second file server will content the same shared directories, the files under all the shared directories and user authority as those in the first file server. 3.The method according to claim 1, wherein the transferring step in the step (A) further comprising the following steps: (a1) Obtaining the users configurations and groups configurations of the Windows NT operating system in the first file server; (a2) Executing a SAMBA software of the Linux operating system in the second file server and using the “useradd” instruction of the Linux operating system to add the users configurations captured in the step (a1) to the ″second file server; and (a3) Executing the SAMBA software of the Linux operating system in the second file server and writing the groups configurations captured in the step (a1) into the “/etc/group” file which is used to store groups information in the Linux operating system. Through the step (a1) to (a3), the second file server will content the same users configurations and groups configurations as those in the first file server. 4.The method according to claim 1, wherein the transferring step in the step (A) further comprising the following steps: (a1) Obtaining the users configurations and users e-mail account configurations of the Windows NT operating system in the first file server; (a2) Executing a SAMBA software of the Linux operating system in the second file server and using “useradd” instruction of the Linux operating system to add the users configurations captured in the step (a1) to the ″second file server; and (a3) Executing the SAMBA software and an e-mail administration software, “sendmail”, developed for Linux operating system in the second file server and adding the users e-mail accounts of the users e-mail account configurations captured in the step (a1) to the second file server. 5.The method according to claim 1, wherein the transferring step in the step (A) further comprising the following steps: (a1) Obtaining the virtual directories configurations and their corresponding actual directories configurations of the Windows NT operating system in the first file server; (a2) Executing a SAMBA software and a Linux based hpertext transfer prococal (HTP) software, “pache”, in the second file server and writing the virtual directories configurations and their corresponding actual directories configurations to “http.conf” file and “access.conf” file of the “apache” software respectively; and (a3) Setting a default directory in the second file server, copying the virtual directories configurations and their corresponding actual directories configurations in the first file server captured in the step (a1) to the default directories. 6.The method according to claim 1, wherein the transferring step in the step (A) further comprising the following steps: (a1) Obtaining the virtual directories configurations and their corresponding actual directories configurations of the Windows NT operating system in the first file server; (a2) Executing a SAMBA software and a Linux based file transfer protocol (FTP) software, “wuftp”, in the second file server and writing the virtual directories configurations and their corresponding actual directories configurations to “/etc/ftpaccess” directory and “/etc/ftphost” directory of the Linux operating system respectively; and (a3) Setting a default directory in the second file server and copy the actual directories and the files under those actual directories in the first file server captured in the step (a1) to the default directory. 7.The method according to claim 1, wherein the graphic interface control program in the step (B) further comprising at least one first program″, the first program has a human-machine interface with the same function to give instructions to directories and files in the Windows NT operating system, the second file server can execute the first program and give instructions to directories and files transferred to the second file server in the step (A). 8.The method according to claim 1, wherein the graphic interface control program in the step (B) further comprising at least one second program″, the second program has a human-machine interface with the same function to give instructions to users and groups in the Windows NT operating system, the second file server can execute the second program and give instructions to users and groups transferred to the second file server in the step (A). 9.The method according to claim 1, wherein the graphic interface control program in the step (B) further comprising at least one third program″, the third program has a human-machine interface with the same function to give instructions to users and groups in the Windows NT operating system, the second file server can execute the third program and give instructions to e-mails administrated by a Linux based sendmail software. 10.The method according to claim 1, wherein the graphic interface control program in the step (B) further comprising at least one forth program″, the forth program creates a screen with the same look as executing IIS (Internet Information Server) software in the Windows NT operating system, the second file server can execute the forth program and display the virtual directories and their corresponding actual directories in the second file server. 11.The method according to claim 1, wherein the graphic interface control program in the step (B) further comprising at least one fifth program″, the second file server can execute the fifth program, give instructions to virtual directories configurations and actual directories configurations of a FTP (file transfer protocol) software, such as “wuftp” software, and give instructions to revoke authority to users use the FTP software.
 12. The method according to claim 1, further comprising the following steps: (C) Coding a sixth program″ for giving run/stop instructions on multiple server software executed in the second file server.
 13. The method according to claim 12, wherein the multiple server software in the the step (C) comprising the following: an e-mail server software, a FTP server software, a telnet server software, a web server software, a SAMBA server software, a POSTGRESQL server software, and a MYSQL server software.
 14. The method according to claim 1, further comprising the following steps: (C1) Coding a seventh program″ for setting multiple parameters of DHCP (Dynamic Host Configurations Protocol), wherein the second file server can execute the seventh program; (C2) Writing the multiple parameters setted in the step (C1) into the “/etc/dhcpd.conf” file of the Linux operating system in the second file server; and (C3) Executing a DHCP software developed for Linux operating system in the second file server.
 15. The method according to claim 14, wherein the multiple parameters comprising the following: a subnet parameter, a network mask parameter, a starting IP address parameter, a ending IP address parameter, and a user name parameter. 